#ifndef TYPES_H
#define TYPES_H

#include <stdio.h>
#include <string.h>
#include <stdbool.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>

//卡的类型
typedef enum         
{
    TIMES_PASS,       // 次卡
    MONTHLY_PASS,       // 月卡 
    YEARLY_PASS         // 年卡

} Member_Type;


typedef enum
{
	MALE,
	FEMALE
} sex;


//会员信息
typedef struct		
{
	char card_id[11];	//卡号ID
	unsigned int mid;	//用户ID
	char name[50];		//姓名
	sex s;			//性别
	char birth[11];		//出生年月
	char number[12];	//手机号
	time_t reg_time;	//注册时间
	time_t expire_time;	//到期时间
	Member_Type type;	//会员类型
	int remainTimes;      	// 次卡剩余次数
	time_t startTime;    	// 卡生效起始时间（月卡/年卡）
	int isActive;         	// 是否有效(0-正常，1-注销)
	char entryTime[20];   	// 入场时间（字符串格式）
	char exitTime[20];    	// 离场时间（字符串格式）
	time_t entryTimeT;    	// 入场时间（时间戳）
	int remainDays;       	// 月卡/年卡剩余天数	

}Member;



// 管理员结构体
typedef struct {
	char username[20];    // 管理员用户名
	char password[20];    // 管理员密码
} Admin;


//函数声明
void initAdmin(Admin* admin);						
int adminLongin(Admin* admin,char* user,char* pwd);			
void registerMember(void);						
bool adminAuthentication(void (*success)(void));
void member_show(void);



		





#endif
